/**
 * 
 */
package org.arga.empresa.model;

import java.math.BigDecimal;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * The job position of this business.
 * 
 * @author aflores@arga-inc.com
 * @since Jan 16, 2010 10:15:54 PM
 */
@Entity
@Table(name="job_positions")
public class JobPosition {
	private Long m_id;
	private String m_jobTitle;
	private String m_description;
    private BigDecimal m_minimumSalary;
    private BigDecimal m_maximumSalary;
    
	/**
	 * Retrieves the id of this position.
	 * @return the id
	 */
    @Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	public Long getId() {
		return m_id;
	}
	
	/**
	 * Sets the id.
	 * @param id the id to set
	 */
	public void setId(Long id) {
		m_id = id;
	}
	
	/**
	 * Retrieves the job title.
	 * @return the job title.
	 */
	@Column(length=100, unique=true, nullable=false)
	public String getJobTitle() {
		return m_jobTitle;
	}
	
	/**
	 * Sets the job title.
	 * @param jobTitle the job title to set
	 */
	public void setJobTitle(String jobTitle) {
		m_jobTitle = jobTitle;
	}
	
	/**
	 * Retrieves the description of this position.
	 * @return the description
	 */
	@Column(length=4000)
	public String getDescription() {
		return m_description;
	}
	
	/**
	 * Sets the description of this position.
	 * @param description the description to set
	 */
	public void setDescription(String description) {
		m_description = description;
	}
	
	/**
	 * Retrieves the minimum salary of this position.
	 * @return the minimum salary.
	 */
	@Column(precision=10, scale=2)
	public BigDecimal getMinimumSalary() {
		return m_minimumSalary;
	}
	
	/**
	 * Sets the minimum salary.
	 * @param minimumSalary the minimum salary to set.
	 */
	public void setMinimumSalary(BigDecimal minimumSalary) {
		m_minimumSalary = minimumSalary;
	}
	
	/**
	 * Retrieves the maximum salary.
	 * @return the maximum salary.
	 */
	@Column(precision=10, scale=2)
	public BigDecimal getMaximumSalary() {
		return m_maximumSalary;
	}
	
	/**
	 * Sets the maximum salary of this job position.
	 * @param maximumSalary the maximum salary to set
	 */
	public void setMaximumSalary(BigDecimal maximumSalary) {
		m_maximumSalary = maximumSalary;
	}
}
